package com.eli.pingserver.utils

/**
 * 网络工具类
 * @author eli
 */
class NetUtil {

    companion object {

        const val PING_WIN_ONCE = "ping -n 1 %s"
        const val PING_UNIX_ONCE = "ping -c 1 %s"

        /**
         * 校验格式
         * @param ip
         */
        fun checkFormat(ip: String): Boolean {
            var result = false

            val ipBytes = ip.split(".")
            if (ipBytes.size != 4) return result

            ipBytes.forEach {
                val byte = it.toInt()
                if (byte < 0 || byte > 255) return result
            }
            return !result
        }

        /**
         * 判断是否是Windows操作系统
         */
        fun hasWinOS(): Boolean{
            val osName = System.getProperty("os.name")
            return osName.toLowerCase().startsWith("win")
        }
    }
}